package com.adtec.base.cloud.persistence.system.model;

import com.adtec.base.cloud.persistence.common.BaseColumns;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * sys_menu
 * @author
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(name = "菜单模型")
public class SysMenu extends BaseColumns {
    @Schema(name = "id--菜单id")
    private Long id;

    /**
     * 父菜单ID
     */
    @Schema(name = "menuPid--父菜单ID")
    private Long menuPid;

    /**
     * 当前菜单所有父菜单
     */
    @Schema(name = "menuPids--当前菜单所有父菜单")
    private String menuPids;

    /**
     * 菜单名称
     */
    @Schema(name = "menuName--菜单名称")
    private String menuName;

    /**
     * 排序
     */
    @Schema(name = "menuSort--排序")
    private Integer menuSort;


    /**
     * 0:不是叶子节点，1:是叶子节点
     */
    @Schema(name = "isLeaf--0:不是叶子节点，1:是叶子节点")
    private Boolean isLeaf;

    /**
     * 跳转URL
     */
    @Schema(name = "url--跳转URL")
    private String url;

    @Schema(name = "icon--图标")
    private String icon;

    /**
     * 菜单层级
     */
    @Schema(name = "level--菜单层级")
    private Integer level;

    /**
     * 0:启用,1:禁用
     */
    @Schema(name = "status--0:启用,1:禁用")
    private Boolean status;


    /**
     * 0:不隐藏,1:隐藏（是否隐藏菜单，某些页面入口不在菜单上显示）
     */
    @Schema(name = "hidden--0:不隐藏,1:隐藏（是否隐藏菜单，某些页面入口不在菜单上显示）")
    private Boolean hidden;


    /**
     * 前端路由组件页面文件import路径
     */
    @Schema(name = "viewImport--前端路由组件页面文件import路径")
    private String viewImport;

}